iT邦幫忙

2

Python 模組: math & statistics

  • 分享至 

  • xImage
  •  

在 Python 中,模組是一個包含函式、類別、變量等的檔案,可以重複使用並提高程式的可讀性和效率。模組有助於組織代碼,並通過模組的導入(import)來方便地在不同程式中共享功能。

為什麼使用模組?

-組織代碼:將代碼分為不同的模組,可以使代碼更具結構化。
-重用性:一次編寫,可以多次使用,減少重複代碼。
-社群貢獻:Python 擁有豐富的第三方模組資源,可以直接使用來解決問題。

模組的類型

-內建模組:Python 自帶的模組,如 math、datetime、os、sys 等。
-第三方模組:需要安裝的外部模組,如 requests、numpy、pandas 等。
-自定義模組:用戶可以創建自己的模組,將重複使用的代碼封裝在模組中。

Python math 模組簡介 import math

功能 語法 說明 範例
平方根 math.sqrt(x) 回傳 x 的平方根 math.sqrt(16) → 4.0
指數 math.exp(x) 回傳 e^x math.exp(1) → 2.718281828459045
絕對值 math.fabs(x) 回傳 x 的絕對值 math.fabs(-5.5) → 5.5
次方 math.pow(x, y) 回傳 x 的 y 次方 math.pow(2, 3) → 8.0
對數 math.log(x, base) 回傳以 base 為底的 x 的對數 math.log(8, 2) → 3.0
常數 π math.pi 回傳圓周率 π (約 3.14159) math.pi → 3.141592653589793
常數 e math.e 回傳自然常數 e (約 2.71828) math.e → 2.718281828459045
取上整數 math.ceil(x) 將 x 向上取整 math.ceil(4.2) → 5
取下整數 math.floor(x) 將 x 向下取整 math.floor(4.9) → 4
正弦函數 math.sin(x) 回傳角度 x 的正弦值 (弧度制) math.sin(math.pi / 2) → 1.0
餘弦函數 math.cos(x) 回傳角度 x 的餘弦值 (弧度制) math.cos(0) → 1.0
圓周長常數 math.tau 回傳 2π math.tau → 6.283185307179586

Python statistics 模組 import statistics as st

statistics 模組提供了基本的統計函數,用於計算數值數據的平均值、中位數、標準差等。

功能 語法 說明 範例
平均值 statistics.mean(data) 回傳數據的平均值 statistics.mean([1, 2, 3, 4, 5]) → 3
中位數 statistics.median(data) 回傳數據的中位數 statistics.median([1, 3, 5, 7, 9]) → 5
眾數 statistics.mode(data) 回傳數據的眾數 statistics.mode([1, 2, 2, 3, 4]) → 2
樣本標準差 statistics.stdev(data) 回傳數據的樣本標準差 statistics.stdev([1, 2, 3, 4, 5]) → 1.58
樣本變異數 statistics.variance(data) 回傳數據的樣本變異數 statistics.variance([1, 2, 3, 4, 5]) → 2.5
群體標準差 statistics.pstdev(data) 回傳數據的群體標準差 statistics.pstdev([1, 2, 3, 4, 5]) → 1.41
群體變異數 statistics.pvariance(data) 回傳數據的群體變異數 statistics.pvariance([1, 2, 3, 4, 5]) → 2
四分位距 statistics.median_grouped(data, interval=1) 用於分組數據的中位數 statistics.median_grouped([1, 2, 3, 3, 5], 1) → 3
調和平均數 statistics.harmonic_mean(data) 回傳數據的調和平均數 statistics.harmonic_mean([1, 2, 4]) → 1.92
幾何平均數 statistics.geometric_mean(data) 回傳數據的幾何平均數 statistics.geometric_mean([1, 3, 9]) → 3.0

Python random 模組簡介 import random

random 模組提供生成隨機數的函數,可用於生成隨機浮點數、整數、隨機選取序列元素、打亂序列順序等。

功能 語法 說明 範例
生成 0~1 隨機浮點數 random.random() 回傳介於 0.0 到 1.0 之間的隨機浮點數 random.random() → 0.5367
生成範圍內隨機浮點數 random.uniform(a, b) 回傳 a 到 b 之間的隨機浮點數 random.uniform(1.5, 3.5) → 2.839
生成範圍內隨機整數 random.randint(a, b) 回傳 a 到 b 之間的隨機整數 random.randint(1, 10) → 7
生成範圍內隨機偶數 random.randrange(start, stop, step) 回傳範圍內以 step 為間隔的隨機整數 random.randrange(0, 10, 2) → 4
隨機選取序列中的元素 random.choice(seq) 從序列 seq 中隨機選取一個元素 random.choice(['apple', 'banana', 'cherry'])banana
隨機選取多個元素 random.sample(seq, k) 從序列中選取 k 個不重複的元素,返回一個列表 random.sample(range(10), 3)[2, 7, 5]
重複選取多個元素 random.choices(seq, k) 從序列中選取 k 個元素,返回一個列表(可重複) random.choices(['apple', 'banana', 'cherry'], k=2)['apple', 'cherry']
打亂序列順序 random.shuffle(seq) 將序列 seq 的元素順序隨機打亂(改變原序列) lst = [1, 2, 3]; random.shuffle(lst); print(lst)[3, 1, 2]
設定隨機種子 random.seed(a) 設置隨機生成器的種子,確保結果可重現 random.seed(10); random.random() → 0.571

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言